Precision machine vision inspection systems (or “vision systems” for short) can be utilized to obtain precise dimensional measurements of inspected objects and to inspect various other object characteristics. Such systems may include a computer, a camera and optical system, and a precision stage that is movable in multiple directions to allow workpiece inspection. One exemplary prior art system, that can be characterized as a general-purpose “off-line” precision vision system, is the commercially available QUICK VISION® series of PC-based vision systems and QVPAK® software available from Mitutoyo America Corporation (MAC), located in Aurora, Ill. The features and operation of the QUICK VISION® series of vision systems and the QVPAK® software are generally described, for example, in the QVPAK 3D CNC Vision Measuring Machine User's Guide, published January 2003, and the QVPAK 3D CNC Vision Measuring Machine Operation Guide, published September 1996, each of which is hereby incorporated by reference in their entirety. This type of system is able to use a microscope-type optical system and move the stage so as to provide inspection images of either small or relatively large workpieces at various magnifications.
General-purpose precision machine vision inspection systems, such as the QUICK VISION™ system, are also generally programmable to provide automated video inspection. Such systems typically include GUI features and predefined image analysis “video tools” such that operation and programming can be performed by “non-expert” operators. For example, U.S. Pat. No. 6,542,180, which is incorporated herein by reference in its entirety, teaches a vision system that uses automated video inspection including the use of various video tools. One known type of video tool is a “multipoint tool” or a “multipoint autofocus tool” video tool. Such a tool provides Z-height measurements or coordinates (along the optical axis and focusing axis of the camera system) derived from a “best focus” position for a plurality of sub-regions at defined X-Y coordinates within a region of interest of the tool, such as determined by an autofocus method. A set of such X,Y,Z coordinates may be referred as point cloud data, or a point cloud, for short. In general, according to prior art autofocus methods and/or tools, the camera moves through a range of positions along a Z-axis (the focusing axis) and captures an image at each position (referred to as an image stack). For each captured image, a focus metric is calculated for each sub-region based on the image and related to the corresponding position of the camera along the Z-axis at the time that the image was captured. This results in focus curve data for each sub-region, which may be referred to simply as a “focus curve” or “autofocus curve.” The peak of the focus curve, which corresponds to the best focus position along the z-axis, may be found by fitting a curve to the focus curve data and estimating the peak of the fitted curve. Variations of such autofocus methods are well known in the art. For example, one known method of autofocusing similar to that outlined above is discussed in “Robust Autofocusing in Microscopy,” by Jan-Mark Geusebroek and Arnold Smeulders in ISIS Technical Report Series, Vol. 17, November 2000. Another known autofocus method and apparatus is described in U.S. Pat. No. 5,790,710, which is hereby incorporated by reference in its entirety.
The machine control instructions including the specific inspection event sequence (i.e., how to acquire each image and how to analyze/inspect each acquired image) are generally stored as a “part program” or “workpiece program” that is specific to the particular workpiece configuration. For example, a part program defines how to acquire each image, such as how to position the camera relative to the workpiece, at what lighting level, at what magnification level, etc. Further, the part program defines how to analyze/inspect an acquired image, for example, by using one or more video tools such as autofocus video tools.
Video tools (or “tools” for short) and other graphical user interface features may be used manually to accomplish manual inspection and/or machine control operations (in “manual mode”). Their set-up parameters and operation can also be recorded during learn mode, in order to create automatic inspection programs, or “part programs.” Video tools may include, for example, edge-/boundary-detection tools, autofocus tools, shape- or pattern-matching tools, dimension-measuring tools, and the like.
In various applications it is desirable to perform high speed autofocus operations to facilitate high-speed 3-D measurements in either stationary or non-stop moving inspection systems. Laser triangulation techniques may provide a 2000:1 range-to-resolution ratio, but typical systems employing such techniques have a lower limit of 4 μm resolution for Z-height measurements and do not provide comparable lateral resolution to exemplary machine vision inspection systems. The speed of autofocus operations in conventional machine vision inspection systems is limited by the motion of the camera through a range of Z-height positions. There is a need for improved autofocus operations utilizing alternative methods of collecting a stack of images for measuring Z-height positions with high speed.